export default{
	namespaced: true,
	state:()=> ({
		address: JSON.parse(uni.getStorageSync('address') || '{}'),
		 // 登录成功之后的 token 字符串
		token: uni.getStorageSync('token') || '',
		// 调用后端生成，这里直接写死
		 // token: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOjIzLCJpYXQiOjE1NjQ3MzAwNzksImV4cCI6MTAwMTU2NDczMDA3OH0.YPt-XeLnjV-_1ITaXGY2FhxmCe4NvXuRnRB8OMCfnPo",
		// 用户的信息对象
		userinfo: JSON.parse(uni.getStorageSync('userinfo') || '{}'),
		 // 重定向的 object 对象 { openType, from }
		  redirectInfo: null
	}),
	
	mutations:{
		// 更新收货地址
		updateAddress(state,address){
			state.address = address
			this.commit('m_user/saveAddressToStorage')
		},
		saveAddressToStorage(state){
			uni.setStorageSync('address',JSON.stringify(state.address))
		},
		// 修改用户信息
		updateUserInfo(state,userinfo){
			state.userinfo = userinfo
			this.commit('m_user/saveUserInfoToStorage')
		},
		saveUserInfoToStorage(state){
			uni.setStorageSync('userinfo',JSON.stringify(state.userinfo))
		},
		  // 更新 token 字符串
		  updateToken(state, token) {
		    state.token = token
		    // 通过 this.commit() 方法，调用 m_user 模块下的 saveTokenToStorage 方法，将 token 字符串持久化存储到本地
		    this.commit('m_user/saveTokenToStorage')
		  },
		
		  // 将 token 字符串持久化存储到本地
		  saveTokenToStorage(state) {
		    uni.setStorageSync('token', state.token)
		  },
		    // 更新重定向的信息对象
		    updateRedirectInfo(state, info) {
		      state.redirectInfo = info
		    }
	},
	
	getters:{
		addstr(state){
			if(!state.address.provinceName) return ''
			return state.address.provinceName + state.address.cityName +state.address.countyName + state.address.detailInfo
		}
	}
}